package com.kb.medical.mapper.mp;

import com.kb.medical.entity.Es;
import com.kb.medical.entity.EsStar;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface EsMapper {


    /**
     * 判断表是否存在
     *
     * @param tableName
     * @return
     */
    Integer isExitsTable(@Param("tableName") String tableName);

    /**
     * @param tableName
     * @return
     */
    Integer createSearchTable(@Param("tableName") String tableName);

    Integer dropTable(@Param("tableName") String tableName);

    List<Es> searchByFilename(@Param("tableName") String tableName, String searchKey);

    /**
     * 只显示图片
     *
     * @param tableName
     * @param searchKey
     * @return
     */
    List<Es> searchByFilenameImage(@Param("tableName") String tableName, String searchKey);

    /**
     * 只显示文本
     *
     * @param tableName
     * @param searchKey
     * @return
     */
    List<Es> searchByFilenamePdfText(@Param("tableName") String tableName, String searchKey);


    void insertByFilename(String tableName, Es es);


    /**
     * 创造个人收藏表
     *
     * @param tableName
     * @return
     */
    Integer createStarTable(@Param("tableName") String tableName);


    /**
     * 显示数据是否存在
     *
     * @param tableName
     * @param id
     * @param searchKey
     * @return 存在返回数据，不存在返回null
     */
    EsStar selectStarTableByData(String tableName, int id, String searchKey);

    EsStar selectStarAndDocumentidTableByData(String tableName, int documentid);

    /**
     * 插入收藏数据
     *
     * @param tableName
     * @param esStar
     */
    void insertStarTable(String tableName, EsStar esStar);


    /**
     * 根据段落id删除收藏数据
     *
     * @param tableName
     * @param id
     */
    void deleteStarById(String tableName, int id);

    void deleteStarByDocumentid(String tableName, int documentid);

    /**
     * 查看收藏数据
     *
     * @param tableName
     * @return
     */
    List<EsStar> selectStarTable(String tableName);


}
